{
 "cells": [
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "# Einsums"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 1,
   "metadata": {},
   "outputs": [],
   "source": [
    "import numpy as np \n",
    "import matplotlib.pyplot as plt\n",
    "from numpy.random import seed, randint\n",
    "from numpy.linalg import inv"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 2,
   "metadata": {},
   "outputs": [],
   "source": [
    "%config InlineBackend.figure_format = \"retina\""
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "http://ajcr.net/Basic-guide-to-einsum/"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 3,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "array([[5, 9],\n",
       "       [6, 2]])"
      ]
     },
     "execution_count": 3,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "seed(1643)\n",
    "A = randint(0, 10, 4).reshape(2, 2)\n",
    "A"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "$\\sum_{i} A_{i,i}$"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 4,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "7"
      ]
     },
     "execution_count": 4,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "# Sum over the diagonal (the trace)\n",
    "np.einsum(\"ii->\", A)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 5,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "22"
      ]
     },
     "execution_count": 5,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "# Sum all of the elements of A\n",
    "np.einsum(\"ij->\", A)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 6,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "array([11, 11])"
      ]
     },
     "execution_count": 6,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "# ∀ col, sum over rows\n",
    "np.einsum(\"ij->j\", A)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 7,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "array([14,  8])"
      ]
     },
     "execution_count": 7,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "# ∀ row, sum over columns\n",
    "np.einsum(\"ij->i\", A)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 8,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "array([[5, 6],\n",
       "       [9, 2]])"
      ]
     },
     "execution_count": 8,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "# Transpose a matrix\n",
    "np.einsum(\"ij->ji\", A)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "$\\sum_{i} a_i  b_i$"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 9,
   "metadata": {},
   "outputs": [],
   "source": [
    "a, b = np.array([1,2,3]), np.array([1, 1, 1])"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 10,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "6"
      ]
     },
     "execution_count": 10,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "# Dot product\n",
    "np.einsum(\"i,i->\", a, b)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 11,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "array([3, 6, 9])"
      ]
     },
     "execution_count": 11,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "# Sum over 'b' and multiply by each entry of i\n",
    "np.einsum(\"i,j->i\", a,b)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 12,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "array([[1, 2, 3],\n",
       "       [2, 4, 6],\n",
       "       [3, 6, 9]])"
      ]
     },
     "execution_count": 12,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "# The outer-product of 'a'\n",
    "np.einsum(\"i,j->ij\", a, a)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## Matrix Multiplication\n",
    "\n",
    "Consider the matrix $E= ABCD$\n",
    "\n",
    "$$\n",
    "    E_{ij} = \\sum_{k}\\sum_{l}\\sum_{m} A_{ik}B_{kl}C_{lm}D_{mj}\n",
    "$$"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "$(AB)_{i,k} = A_{i,:}\\cdot B_{:,k} = \\sum_{j=1}^n A_{i,j} B_{j, k}$"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 13,
   "metadata": {},
   "outputs": [],
   "source": [
    "A = np.array([[1, 1, 1],\n",
    "              [2, 2, 2],\n",
    "              [5, 5, 5]])\n",
    "\n",
    "B = np.array([[0, 1, 0],\n",
    "              [1, 1, 0],\n",
    "              [1, 1, 1]])"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 14,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "array([[ 2,  3,  1],\n",
       "       [ 4,  6,  2],\n",
       "       [10, 15,  5]])"
      ]
     },
     "execution_count": 14,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "# Since the resulting term does not contain 'j', we are implicity stating that\n",
    "# we should sum over indices j\n",
    "np.einsum(\"ij,jk -> ik\", A, B)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## The Squared Mahalanobis Distance\n",
    "\n",
    "The Mahalanobis distance of a vector $\\bf x$ with covariance matrix $\\bf S$ is defined as\n",
    "\n",
    "$$\n",
    "D_M({\\bf x}) = \\left({\\bf x}^T{\\bf S}^{-1}{\\bf x}\\right)^{1/2}\n",
    "$$"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 15,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "array([1.89039944, 0.16621811, 0.94338245])"
      ]
     },
     "execution_count": 15,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "seed(1643)\n",
    "x = np.random.randint(-10, 10, 3)\n",
    "S = np.random.randn(3)\n",
    "S = np.exp(-1 / 2 * (S[:, np.newaxis] - S[np.newaxis, :])**2)\n",
    "np.linalg.eigvals(S) # Not a singular matrix / positive semidefinite"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 16,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "array([-5.81794629, -7.32889192,  6.15102389])"
      ]
     },
     "execution_count": 16,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "x.T @ S"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 17,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "array([-5.81794629, -7.32889192,  6.15102389])"
      ]
     },
     "execution_count": 17,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "np.einsum(\"i,ik->k\", x, S)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 18,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "132.46814131578864"
      ]
     },
     "execution_count": 18,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "x.T @ inv(S) @ x"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 19,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "132.4681413157886"
      ]
     },
     "execution_count": 19,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "np.einsum(\"i,ik,k->\", x, inv(S), x)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## In Higher Dimensions\n",
    "Given the following 5x3 matrix of integers, suppose we want to compute the outer-product of each column.\n",
    "The resulting array should be of shape `(3, 5, 5)`"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 20,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "array([[8, 9, 3],\n",
       "       [6, 0, 7],\n",
       "       [2, 8, 6],\n",
       "       [7, 0, 3],\n",
       "       [6, 7, 8]])"
      ]
     },
     "execution_count": 20,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "seed(314)\n",
    "Phi = np.random.randint(0, 10, (5, 3))\n",
    "Phi"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "#### For a single column"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "In matrix notation, the outer-product of a vector is given by the product $aa^T$"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 21,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "array([[64, 48, 16, 56, 48],\n",
       "       [48, 36, 12, 42, 36],\n",
       "       [16, 12,  4, 14, 12],\n",
       "       [56, 42, 14, 49, 42],\n",
       "       [48, 36, 12, 42, 36]])"
      ]
     },
     "execution_count": 21,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "Phi[:, [0]] @ Phi[:, [0]].T"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "Under `einsum`, we can express the outer-product of any two unidimensional arrays $a$, $b$ by specifying the indices of $a$ and $b$."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 22,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "array([[64, 48, 16, 56, 48],\n",
       "       [48, 36, 12, 42, 36],\n",
       "       [16, 12,  4, 14, 12],\n",
       "       [56, 42, 14, 49, 42],\n",
       "       [48, 36, 12, 42, 36]])"
      ]
     },
     "execution_count": 22,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "vPhi_i = Phi[:, 0]\n",
    "np.einsum(\"i,j->ij\", vPhi_i, vPhi_i)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 23,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "array([[[64, 48, 16, 56, 48],\n",
       "        [48, 36, 12, 42, 36],\n",
       "        [16, 12,  4, 14, 12],\n",
       "        [56, 42, 14, 49, 42],\n",
       "        [48, 36, 12, 42, 36]]])"
      ]
     },
     "execution_count": 23,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "vPhi_i = Phi[:, [0]]\n",
    "np.einsum(\"ik,jk->kij\", vPhi_i, vPhi_i)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "#### For every column"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 24,
   "metadata": {
    "scrolled": false
   },
   "outputs": [
    {
     "data": {
      "text/plain": [
       "array([[[64, 48, 16, 56, 48],\n",
       "        [48, 36, 12, 42, 36],\n",
       "        [16, 12,  4, 14, 12],\n",
       "        [56, 42, 14, 49, 42],\n",
       "        [48, 36, 12, 42, 36]],\n",
       "\n",
       "       [[81,  0, 72,  0, 63],\n",
       "        [ 0,  0,  0,  0,  0],\n",
       "        [72,  0, 64,  0, 56],\n",
       "        [ 0,  0,  0,  0,  0],\n",
       "        [63,  0, 56,  0, 49]],\n",
       "\n",
       "       [[ 9, 21, 18,  9, 24],\n",
       "        [21, 49, 42, 21, 56],\n",
       "        [18, 42, 36, 18, 48],\n",
       "        [ 9, 21, 18,  9, 24],\n",
       "        [24, 56, 48, 24, 64]]])"
      ]
     },
     "execution_count": 24,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "# For every column 'k', compute the matrix resulting\n",
    "# in evaluating every pair of value multiplication\n",
    "# (i,j)\n",
    "np.einsum(\"ik,jk->kij\", Phi, Phi)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### The Mahalanobis distance in a multidimensional array\n",
    "\n",
    "We are interested in computing the squared Mahalanobis distance between a set of vectors $\\bf X$ and a covariance matrix $\\bf S$."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 25,
   "metadata": {},
   "outputs": [],
   "source": [
    "seed(1643)\n",
    "x = np.random.randint(-10, 10, (2, 3))\n",
    "S = np.random.randn(3)\n",
    "S = np.exp(-1 / 2 * (S[:, np.newaxis] - S[np.newaxis, :])**2)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "Recall, for a unidemensional array, the Mahalanobis distance under an einsum is given by `i,ik,k->`"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 26,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "array([[-5.81794629, -7.32889192,  6.15102389],\n",
       "       [ 2.37852468,  1.74367502, -5.94610877]])"
      ]
     },
     "execution_count": 26,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "# We fix the row and sum over the columns\n",
    "np.einsum(\"ji,ik->jk\", x, S)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 27,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "array([132.46814132, 640.35662576])"
      ]
     },
     "execution_count": 27,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "# 'j' represents each of the rows of x.\n",
    "#    ji,ik represents the inner product of each row with S.\n",
    "#    The resulting vector can be multiplied by each row of x\n",
    "#    and the result should be the number of rows\n",
    "np.einsum(\"ji,ik,jk->j\", x, inv(S), x)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "**The Mahalanobis distance for a collection of vectors under a multidimensional array**  \n",
    "\n",
    "Suppose we want to compute the Mahalanobis distance for a collection of arrays and covariance matrices. In this example, we have our target array ${\\bf x} \\in \\mathbb{R}^{2\\times3}$ and a multidimensional array ${\\bf S} \\in \\mathbb{R}^{2\\times 3\\times 3}$. What we want is to find an einsum expression that returns a vector with two entries."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 28,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "(2, 3, 3)"
      ]
     },
     "execution_count": 28,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "seed(1643)\n",
    "x = np.random.randint(-10, 10, (2, 3)) * 1. # cast to float64\n",
    "\n",
    "S1 = np.random.randn(3)\n",
    "S1 = np.exp(-1 / 2 * (S1[:, np.newaxis] - S1[np.newaxis, :])**2)\n",
    "\n",
    "S2 = np.random.randn(3)\n",
    "S2 = np.exp(-1 / 2 * (S2[:, np.newaxis] - S2[np.newaxis, :])**2)\n",
    "\n",
    "S = np.stack((S1, S2))\n",
    "S.shape"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 29,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "132.4681413157886"
      ]
     },
     "execution_count": 29,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "np.einsum(\"i,ik,k->\", x[0], inv(S1), x[0])"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 30,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "2332.058020928929"
      ]
     },
     "execution_count": 30,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "np.einsum(\"i,ik,k->\", x[1], inv(S2), x[1])"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 31,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "array([ 132.46814132, 2332.05802093])"
      ]
     },
     "execution_count": 31,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "np.einsum(\"ji,jik,jk->j\", x, inv(S), x)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## Speedtest\n",
    "\n",
    "(See chapter 12: probabilistic PCA for context)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 34,
   "metadata": {},
   "outputs": [],
   "source": [
    "import tensorflow as tf\n",
    "mnist = tf.keras.datasets.mnist.load_data()\n",
    "(Xtrain, ytrain), (Xtest, ytest) = mnist"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 35,
   "metadata": {},
   "outputs": [],
   "source": [
    "N, D, D = Xtrain.shape\n",
    "X = Xtrain.reshape(N, -1)\n",
    "N, D = X.shape\n",
    "\n",
    "Xhat = X - X.mean(axis=0)\n",
    "\n",
    "M = 2\n",
    "W = np.random.randn(D, M)\n",
    "sigma2 = 0.5"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 36,
   "metadata": {},
   "outputs": [],
   "source": [
    "# Helper posterior distribution matrix\n",
    "Mz = W.T @ W + sigma2 * np.identity(M)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 37,
   "metadata": {},
   "outputs": [],
   "source": [
    "from time import time\n",
    "def time_product(M, W, X, N=None):\n",
    "    init = time()\n",
    "    E_zn = M @ W.T @ X[:N, :].T\n",
    "    end = time()\n",
    "    return end - init\n",
    "\n",
    "def time_einsum(M, W, X, N=None):\n",
    "    init = time()\n",
    "    E_zn = np.einsum(\"ij,mj,km->ik\", M, W, X[:N, :], optimize=True)\n",
    "    end = time()\n",
    "    return end - init\n",
    "\n",
    "def sample_times(f, M, W, X, step=100):\n",
    "    N, D = X.shape\n",
    "    list_seconds = []\n",
    "    n_samples = np.arange(2, N, step)\n",
    "    for nsamp in n_samples:\n",
    "        print(nsamp, end=\"\\r\")\n",
    "        nsecs = f(M, W, X, nsamp)\n",
    "        list_seconds.append(nsecs)\n",
    "    return list_seconds"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 38,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "CPU times: user 3min 41s, sys: 31.9 s, total: 4min 13s\n",
      "Wall time: 1min 3s\n"
     ]
    }
   ],
   "source": [
    "%%time\n",
    "einsum_seconds = sample_times(time_einsum, inv(Mz), W, X)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 39,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "CPU times: user 5min 58s, sys: 38.8 s, total: 6min 37s\n",
      "Wall time: 2min 5s\n"
     ]
    }
   ],
   "source": [
    "%%time\n",
    "product_seconds = sample_times(time_product, inv(Mz), W, X)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 62,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "iVBORw0KGgoAAAANSUhEUgAAAxYAAAJeCAYAAAApwpMSAAAABHNCSVQICAgIfAhkiAAAAAlwSFlzAAAWJQAAFiUBSVIk8AAAADh0RVh0U29mdHdhcmUAbWF0cGxvdGxpYiB2ZXJzaW9uMy4xLjMsIGh0dHA6Ly9tYXRwbG90bGliLm9yZy+AADFEAAAgAElEQVR4nOzdeZgU1dn38e8NDPvqAogYwcSIUVyI+iQQFbcYd41o1LigxsQ1GtRHE43iEjW+Gve4R000brji45YEkbhFXEBR4goqiggCMyAMM8zc7x9VPdTUVM/0THdP18z8PtfVV3dXnao63V0Mddc59znm7oiIiIiIiOSjU6krICIiIiIibZ8CCxERERERyZsCCxERERERyZsCCxERERERyZsCCxERERERyZsCCxERERERyZsCCxERERERyZsCCxERERERyZsCCxERERERyZsCCxERERERyZsCCxERERERyZsCCxERERERyZsCCxERERERyZsCCxERERERyZsCCxERkQ7EzIaYmef42KGtHlNEWl+XUldAREREWtVq4IjI+87AHcCrwPWxsq+14WOKSCtTYCEiItKBuPtXwN2Z92a2KWDAs+5+d9YN29gxRaT1qSuUiIhIx7ZF+PxWOz+miBSZAgsRESkJM5sa9qkfX+q6dHAKLESkIBRYiIhEmFlPMzvBzCab2admtsLMvjGzOWY2ycwON7Mepa5n2pnZeDObaGZblbouhRQJhuKPkY1ss0WWbaZGymyWsH7ThH31M7OaWLmLsxz34Vi5W7JUcQtgBfBhbPu1zezL2D6ebeRz7pbwGf63OccUkbZNgYWISMjM9gE+Av4M7A1sANQCNcAw4EDgb8CHZrZziarZVowHzgcaCyw+Bd4DylujQkV2YiPrTsph+3eBJbFlYxLK/ZCG/3cnlQMYHXv/YpZyWwCz3L02utDdvwZOiJXdzcyOi+/AzPoAt8YWTweubM4xRaRtU2AhIkJwhx14FBhMcLF7BLCOu/d2975Af2AcMBUYAmhIzDy5+5HuPsLdHyl1XQrgcDPrG19oZv2Bnze1sbs78FJscVLAkLRsOzOrNxiLmW0MDIqVaxBYmFk/4FvAzCz1egS4P7b4CjPbILbscmDDyPsq4Gh3r2nuMUWk7VJgISIdnpltAdxE8DfxSWBrd787vGMLgLuX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REREWkcndYVKPQUWIo1YuXIlCxcuBKB///4F3feCBQs466yzOPHEE5k/fz5Llixh+fLldXfLq6ur2W+//Zg5cyY77LAD06ZNY+XKlVRUVPDll19y+umnU1lZyRFHHMFHH33U4nqMGDGCww8/HChNrsVvfvMbhg8fzsyZMykvL6eiooKLLroIgBtuuIFLLrmEP/3pT1x99dV1699++2022WQTli5d2mhLy4033shbb73FXXfdxfLlyykvL+fNN99k1KhRrFixgoMPPpglS5bUlR89ejTf+973qKqq4p577knc57/+9S8++eQTevXqxVUs7sUAACAASURBVM9+9rPCfhkiIpKVkrfTT4GFSCNuv/123B2A//mf/ynovisrKzn44IO54YYbGDRoEADdu3dn6NChANx1111Mnz6dbbfdlmeffZbtt9+erl27AjBo0CCuuOIKTjjhBFasWMFVV12VV13OP/98ysrKePXVV3nsscfy+2DN1KlTJ5588km22GILIMhvOffcc9l5551xd8455xzOPfdcTj31VHr16gXA5ptvzq233grA448/TlVVVeK+y8vLueWWWzjyyCMpKysDYKuttuKZZ55h7bXXZsGCBdxwww31tsm0Wtxxxx2J+/zLX/4CwLhx4+jTp0+en15ERHKlrlDp16XUFZDWMezs/yt1FQpm7mV7FXX/7s4nn3zCpEmTOO+88wDYcMMN2WeffQp+rDPPPDPrukx3m5NOOolu3bolljnssMO48cYb8+7CNHz4cI499lhuuukmfv/737Pvvvs2mjtRSMcff3xia9Cuu+7KlClT6Nq1KxMmTGiwfsyYMXTv3p3Kyko+/PBDvve97zUos+GGG3LYYYc1WL7OOuvwq1/9iksuuYRJkybVa6k58sgjOfvss5kxYwZvvvkmW2+9dd268vJyHnnkEUDdoEREWlvnTrofnnb6hUSA559/vi4RuVOnTgwfPpwzzzyTlStXst566/Hoo4/WtRYUSo8ePdhyyy0T161evZpXX30VgAkTJjB48ODExwEHHADAZ599lnd9zj33XLp3787bb7/Nfffdl/f+cjVy5MjE5QMHDgSCJO/evXs3WN+pU6e6/Jdod6aoHXfcMWuAtOOOOwIwa9asei0ea6+9Nvvvvz/QsNXi73//O5WVlWy88cbssMMOjX0sEREpMLVYpJ8CCxHqT5A3ePBgvv3tb7Pbbrtx+eWX884777DVVlsV/Jhrr712g2TtjMWLF9dd7C5evJgFCxYkPhYtWgRQkDk21l9/fU444QQgGPWqpqYm733mYr311ktc3rlz50bXR8tUV1cnrl9//fWzbptZV1NT0yAwyXSH+vvf/14v6Mh0gzr66KOz7ldERIojfp8o01VZ0kNdoTqIYncfautGjx7N1KlTW/WYmYviJNFhVmfOnFmXf1Bsv/3tb7nlllt4//33ueuuu9p1d5/G/kPaddddGT58OHPmzOHxxx9n3LhxvPPOO7z22mt07tyZo446qhVrKiIiAPG/2tU1TtcuasVIE7VYiLRAly5BTF5ZWZm1THl5eYv3v/baa9cFHu+++26L99Nc6667bt0QrxdeeGHWpGhY8x1A9u8hn++gEL744ous6+bPnw8EAd6AAQPqrTOzuqAq0x3q9ttvB2D33XdnyJAhxaiuiIg0In5DqLqmNktJKRUFFiItkEk2njdvXuJ6d683oV5zlZWVsc022wDkPU9Fc5155pn079+fTz75hFtuuSVruWjCdbbvYfr06QWvX3M8//zzTa7bfPPNE/Nnjj76aDp37swzzzzDJ598wt133w0oaVtEpFTiDc2ra9QVKm0UWIi0QCbhePr06XV3vqPuueeevBOqM7N6P/TQQzz33HONls2WvNwS/fv35/TTTwfgkksuyZq/0bt377oZtZOGqP3666+57bbbClavlpg7dy733ntvg+WLFy+uC5oyM4/Hrb/++uyxxx7U1NTw85//nIULF7Luuuuy7777FrXOIiKSrDYWR1TXqsUibRRYiLTAmDFjGDJkCFVVVRx66KHMmTMHgBUrVnDzzTdz3HHHNehe01zHHnssP/jBD6itrWXvvffmmmuuYfHixXXrv/rqK+69917Gjh3LNddck9ex4k477TTWWWcd5s+fzxtvvJG13MEHHwzAxRdfzOOPP87q1asBeOWVV9h1110b7UrVGvr168dxxx3H3XffXVe3t956i913352FCxcycOBATjzxxKzbZ5K4X3zxRQAOP/zwuvkwRESkdXksy0ItFumjwEKkBbp06cL1119Pp06deP7559loo43o168f/fr14/jjj+ewww7L+852WVkZjz32GGPGjGHFihV1F/trrbUWffr0YdCgQRx22GF1Q+UWUu/evTn77LOb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EhERiWqQYxEfJkpKTi0WIkXys5/9jH322Yc5c+awdOlSKioquPTSSzEzHnvsMZ588sl65a+55hreffdd1l13XZ544glWrVrF4sWLqays5P333+eyyy7j29/+dsHrOWPGDK666iquvvpqysvLqaio4K233mKTTTZh8eLFnH322Rx++OFssMEGzJgxg4qKCioqKrj44osBuPHGGxu0pIiIiBRafOZtDTebPmqxEAFeeuklBg8e3GiZ999/n759++a8z2233Zb77ruvrltUr169OPvss3nxxRd54oknmDRpEnvuuWdd+VdeeQWA008/nb322qtueVlZGRtvvDFnnXVWcz5SzsrLy5k4cSKnnnpq3bKRI0dy6623ssMOO/DII48wYMAAPv74Y/r37w9Az549Oeecc5gyZQpTpkzh4YcfZvPNNy9K/URERKDhPBYaFSp9FFh0FBP7lboGhTOxvOC7rK6uZsGCBY2WqW3meNlnn312XVARtf/++/PEE080uMufCVrmz5/frOPkq2vXrkyYMKHB8jFjxtC9e3cqKys54YQT6oKKqF122YUpU6aoxUJERIquwTwWarFIHXWFEgF23HFH3L3RR9KFdWO23XbbxOXrr78+AEuWLKm3PNN6ce2113LEEUfw1FNPsWzZshZ8muYZNmwYffr0abC8U6dOdfN0ZGuNGDRoENDws4iIiBRag5m3lWOROgosRIok6WIdoHv37kDQShJ15JFH8stf/hJ35+6772bPPfekf//+bL311px33nlFa8lYb731sq7r3Llzo2Uy6+OfRUREpNAa5FisVotF2qgrVEdRhO5DUng333wzv/71r3nggQeYNm0a//nPf5gxYwYzZszgT3/6E4888gi77bZbqaspIiLS6hqOCqXAIm3UYiGSMpttthkXXHABzz33HEuXLmXy5MmMHDmSb775hqOOOqpe60CXLsG9gcrKyqz7Ky9XUCkiIm1ffB4LTZCXPgosRFKsa9eu7L333jz44INAkNj9wQcf1K3P5H3Mmzcvcftvvvmm3iR3IiIibVW8xaJKXaFSR4GFSEpkm40boEePHnWvV61aVfd65MiRQDAZX1KrxVVXXVWvvIiISFvVIHlbo0KljgILkZTYdddd+fWvf820adNYuXJl3fJ33nmH8ePHA0ESdSaYANhnn33o0aMHCxcu5Mgjj+Srr74C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\n",
      "text/plain": [
       "<Figure size 432x288 with 1 Axes>"
      ]
     },
     "metadata": {
      "image/png": {
       "height": 303,
       "width": 395
      },
      "needs_background": "light"
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "fig, ax = plt.subplots()\n",
    "n_samples = np.arange(2, N, 100)\n",
    "plt.plot(n_samples, 1e3 * np.array(product_seconds), label=\"Pure Numpy\")\n",
    "plt.plot(n_samples, 1e3 * np.array(einsum_seconds), label=\"Einsum\")\n",
    "plt.legend(fontsize=12)\n",
    "ax.spines[\"right\"].set_visible(False)\n",
    "ax.spines[\"top\"].set_visible(False)\n",
    "plt.ylabel(\"Miliseconds\", fontsize=13)\n",
    "plt.xlabel(r\"Observations ($N$)\", fontsize=13)\n",
    "\n",
    "ticks = np.arange(0, N+1, 10000)\n",
    "labs = [format(tick, \",\") for tick in ticks]\n",
    "plt.xticks(ticks, labs)\n",
    "\n",
    "title = (r\"Computing ${\\bf M}{\\bf W}^T{\\bf X}^T$\" \"\\n\"\n",
    "         r\"${\\bf M}\\in\\mathbb{R}^{M\\times M}, {\\bf W}\\in\\mathbb{R}^{D\\times M},\"\n",
    "         r\"{\\bf X}\\in\\mathbb{R}^{N\\times D}$\")\n",
    "plt.title(title);"
   ]
  }
 ],
 "metadata": {
  "kernelspec": {
   "display_name": "Python 3",
   "language": "python",
   "name": "python3"
  },
  "language_info": {
   "codemirror_mode": {
    "name": "ipython",
    "version": 3
   },
   "file_extension": ".py",
   "mimetype": "text/x-python",
   "name": "python",
   "nbconvert_exporter": "python",
   "pygments_lexer": "ipython3",
   "version": "3.7.6"
  }
 },
 "nbformat": 4,
 "nbformat_minor": 2
}
